package cn.b.sky.mes.qm.service;

import java.util.List;

import cn.b.sky.common.model.TreeInterface;
import cn.b.sky.mes.qm.model.DefectNode;

/**
 * 
 * <strong>Title : DefectNodeService.java<br></strong>
 * <strong>Package : cn.b.sky.mes.qm.service<br></strong>
 * <strong>Description : </strong>缺陷树service<br> 
 * <strong>Create on : 2015-12-16 上午11:14:25<br></strong>
 * <p>
 * @author lidapeng<br>
 * @version <strong>v1.0.0</strong><br>
 * <br>
 * <strong>修改历史:</strong><br>
 * 修改人 | 修改日期 | 修改描述<br>
 * -------------------------------------------<br>
 * <br>
 * <br>
 */
public interface DefectNodeService {

  /**
   * 
   * <strong>Title : getDefectNodeTree<br></strong>
   * <strong>Description : </strong>获取缺陷树<br> 
   * <strong>Create on : 2015-12-17 上午11:02:11<br></strong>
   * <p>
   * @param siteCode
   * @return
   * List<DefectNode>
   * @throws 
   * @author lidapeng<br>
   * @version <strong>v1.0.0</strong><br>
   * <br>
   * <strong>修改历史:</strong><br>
   * 修改人 | 修改日期 | 修改描述<br>
   * -------------------------------------------<br>
   * <br>
   * <br>
   */
  List<TreeInterface> getDefectNodeTree(String siteCode);

  /**
   * 
   * <strong>Title : saveDefectNode<br></strong>
   * <strong>Description : </strong>保存缺陷树<br> 
   * <strong>Create on : 2015-12-17 上午11:02:27<br></strong>
   * <p>
   * @param defectNode
   * void
   * @throws 
   * @author lidapeng<br>
   * @version <strong>v1.0.0</strong><br>
   * <br>
   * <strong>修改历史:</strong><br>
   * 修改人 | 修改日期 | 修改描述<br>
   * -------------------------------------------<br>
   * <br>
   * <br>
   */
  void saveDefectNode(DefectNode defectNode);

  /**
   * 
   * <strong>Title : getDefectNodeByNodeCodeAndSiteCode<br></strong>
   * <strong>Description : </strong>查询缺陷树节点信息<br> 
   * <strong>Create on : 2015-12-17 上午11:02:39<br></strong>
   * <p>
   * @param siteCode
   * @param nodeCode
   * @return
   * DefectNode
   * @throws 
   * @author lidapeng<br>
   * @version <strong>v1.0.0</strong><br>
   * <br>
   * <strong>修改历史:</strong><br>
   * 修改人 | 修改日期 | 修改描述<br>
   * -------------------------------------------<br>
   * <br>
   * <br>
   */
  DefectNode getDefectNodeByNodeCodeAndSiteCode(String siteCode, String nodeCode);

  /**
   * 
   * <strong>Title : deleteDefectNodeByNodeCodeAndSiteCode<br></strong>
   * <strong>Description : </strong>删除缺陷树<br> 
   * <strong>Create on : 2015-12-17 上午11:03:02<br></strong>
   * <p>
   * @param siteCode
   * @param nodeCode
   * void
   * @throws 
   * @author lidapeng<br>
   * @version <strong>v1.0.0</strong><br>
   * <br>
   * <strong>修改历史:</strong><br>
   * 修改人 | 修改日期 | 修改描述<br>
   * -------------------------------------------<br>
   * <br>
   * <br>
   */
  void deleteDefectNodeByNodeCodeAndSiteCode(String siteCode, String nodeCode);

  /**
   * 
   * <strong>Title : getChildrensNode<br></strong>
   * <strong>Description : </strong>获取缺陷树子节点<br> 
   * <strong>Create on : 2015-12-17 上午11:03:13<br></strong>
   * <p>
   * @param siteCode
   * @param nodeCode
   * @return
   * List<DefectNode>
   * @throws 
   * @author lidapeng<br>
   * @version <strong>v1.0.0</strong><br>
   * <br>
   * <strong>修改历史:</strong><br>
   * 修改人 | 修改日期 | 修改描述<br>
   * -------------------------------------------<br>
   * <br>
   * <br>
   */
  List<DefectNode> getChildrensNode(String siteCode, String nodeCode);

  /**
   * 
   * <strong>Title : modifyDefectNode<br></strong>
   * <strong>Description : </strong>修改<br> 
   * <strong>Create on : 2015-12-17 下午1:47:57<br></strong>
   * <p>
   * @param defectNode
   * void
   * @throws 
   * @author lidapeng<br>
   * @version <strong>v1.0.0</strong><br>
   * <br>
   * <strong>修改历史:</strong><br>
   * 修改人 | 修改日期 | 修改描述<br>
   * -------------------------------------------<br>
   * <br>
   * <br>
   */
  void modifyDefectNode(DefectNode defectNode);

}
